package com.ihr360.payroll.service.alps.profile;

import com.ihr360.alps.IServiceProfile;

public  class BaseServiceProfile implements IServiceProfile {
    public static final class DEFAULT_VAL {
        public static final double FIXED_BASE = 0.00;
        public static final double MONTHLY_WORK_DAYS = 21.75;
        public static final double DAILY_WORK_HOURS = 8;
    }
    private final String name;
    private final String code;
    private final int index;
    private final double defaultValue;

    //为了减少不同规则之间的方法处理差异，这个baseRatio 作为一个默认填充项目
    public static final BaseServiceProfile baseRatio = new BaseServiceProfile(4, "基数比例", "baseRatio",100.00);

    public static final BaseServiceProfile monthWorkCount = new BaseServiceProfile(5, "月标准计薪天数", "monthWorkCount",DEFAULT_VAL.MONTHLY_WORK_DAYS);
    public static final BaseServiceProfile dayWorkCount = new BaseServiceProfile(6, "日标准工作小时", "dayWorkCount",DEFAULT_VAL.DAILY_WORK_HOURS);


    public BaseServiceProfile(int index, String name, String code, double defaultValue) {
        this.name = name;
        this.code = code;
        this.index = index;
        this.defaultValue = defaultValue;
    }
    @Override
    public String getCode() {
        return code;
    }

    public int getIndex() {
        return index;
    }

    @Override
    public String getName() {
        return name;
    }

    @Override
    public double getDefaultValue() {
        return defaultValue;
    }
}